iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 12
0

Django有一個內建的app叫admin,它是一個後台管理系統,提供資料的新增或管理功能,在瀏覽器開啟。

註冊帳戶

第一件事就是要先創立帳戶,輸入下面指令,之後會依序要求你鍵入帳戶資料:

>>> python3 manage.py creatsuperuser

創建成功後執行runserver,網址輸入http://127.0.0.1:8000/admin/ ,就可以看到下面的登入畫面了。
https://ithelp.ithome.com.tw/upload/images/20200912/20129725ubSRcBxdy8.png

Register Question

需要先編輯quiz/admin.py,才可以在後台系統進行資料的新增及變更:

from django.contrib import admin
from .models import Question, Choice

class ChoiceInline(admin.StackedInline): # class StachedInline
    model = Choice
    extra = 4 # 一個問題有四個選項

class QuestionAdmin(admin.ModelAdmin):
    list_display = ('id', 'question_text') # 詳細說明參考附錄圖一
    fieldsets = [
        (None, {'fields': ['question_text']}),
    ] # 詳細說明參考附錄圖二
    inlines = [ChoiceInline]

admin.site.register(Question, QuestionAdmin)

admin的介面現在看得到quiz專案的Question:
https://ithelp.ithome.com.tw/upload/images/20200912/20129725Kz7Js0fULr.png
點擊+add,畫面顯示可以同時新增問題及選項:
https://ithelp.ithome.com.tw/upload/images/20200912/20129725y464HrCL9c.png

附錄:圖片

圖一:藉由list_display,可以選擇你要呈現的欄位。
https://ithelp.ithome.com.tw/upload/images/20200912/20129725MaAAbXLPHJ.png
圖二:filedsets是一個list,由two-tuples組成 [(name, field_options), ...],name是指該下圖這個區塊的名稱,我取None,所以介面就沒顯示了。
https://ithelp.ithome.com.tw/upload/images/20200912/20129725Ho6iGT9ygV.png


上一篇
Django - 資料庫互動
下一篇
Django - views
系列文
Django案例實作之踩坑全記錄34
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言